home *** CD-ROM | disk | FTP | other *** search
- import java.applet.Applet;
- import java.awt.Event;
- import java.util.Enumeration;
- import x3d.Browser;
- import x3d.EventObserver;
- import x3d.Field;
- import x3d.Node;
-
- public class examine extends Applet implements Runnable, EventObserver {
- // $FF: renamed from: b0 float[]
- private float[] field_0 = new float[3];
- // $FF: renamed from: b1 x3d.Browser
- private Browser field_1;
- // $FF: renamed from: b2 float[]
- private float[] field_2 = new float[12];
- // $FF: renamed from: b3 float[]
- private float[] field_3 = new float[12];
- // $FF: renamed from: b4 int
- private int field_4;
- // $FF: renamed from: b5 int
- private int field_5;
- // $FF: renamed from: b6 boolean
- private boolean field_6 = false;
- // $FF: renamed from: b7 java.lang.Thread
- private Thread field_7;
- // $FF: renamed from: b8 int
- private int field_8 = 10;
- // $FF: renamed from: b9 int
- private int field_9 = 4;
- private float[] b10 = new float[12];
- private Field b11;
- private float[] b12 = new float[3];
- private Field b13;
- private float[] b14 = new float[4];
- private float b15 = 100.0F;
- private float[] b16 = new float[12];
- private boolean b17 = false;
- private float[] b18 = new float[12];
- private Node b19;
- private float[] b20 = new float[12];
- private float[] b21 = new float[12];
- private float b22 = 1.0F;
- private boolean b23 = false;
- private Node b24;
- private Field b25;
- private float[] b26 = new float[3];
- private Field b27;
- private float[] b28 = new float[3];
- private int b29;
- private int b30;
- private boolean b31 = false;
- private float[] b32 = new float[3];
- private float b33 = 1.0F;
-
- // $FF: renamed from: b0 (float, float, float, float, float[]) void
- private void method_0(float var1, float var2, float var3, float var4, float[] var5) {
- float var6 = (float)Math.sqrt((double)(var1 * var1 + var2 * var2 + var3 * var3));
- if ((double)var6 < 1.0E-8) {
- var5[0] = 1.0F;
- var5[1] = 0.0F;
- var5[2] = 0.0F;
- var5[3] = 0.0F;
- var5[4] = 1.0F;
- var5[5] = 0.0F;
- var5[6] = 0.0F;
- var5[7] = 0.0F;
- var5[8] = 1.0F;
- } else {
- var6 = 1.0F / var6;
- float var7 = var1 * var6;
- float var8 = var2 * var6;
- float var9 = var3 * var6;
- float var10 = (float)Math.sin((double)(-var4));
- float var11 = (float)Math.cos((double)(-var4));
- float var12 = 1.0F - var11;
- float var13 = var7 * var9;
- float var14 = var7 * var8;
- float var15 = var8 * var9;
- var5[0] = var12 * var7 * var7 + var11;
- var5[1] = var12 * var14 - var10 * var9;
- var5[2] = var12 * var13 + var10 * var8;
- var5[3] = var12 * var14 + var10 * var9;
- var5[4] = var12 * var8 * var8 + var11;
- var5[5] = var12 * var15 - var10 * var7;
- var5[6] = var12 * var13 - var10 * var8;
- var5[7] = var12 * var15 + var10 * var7;
- var5[8] = var12 * var9 * var9 + var11;
- }
-
- }
-
- // $FF: renamed from: b0 (float[], float[], float[]) void
- private final void method_1(float[] var1, float[] var2, float[] var3) {
- float var4 = var1[0] * var2[0] + var1[1] * var2[3] + var1[2] * var2[6];
- float var5 = var1[0] * var2[1] + var1[1] * var2[4] + var1[2] * var2[7];
- float var6 = var1[0] * var2[2] + var1[1] * var2[5] + var1[2] * var2[8];
- float var7 = var1[3] * var2[0] + var1[4] * var2[3] + var1[5] * var2[6];
- float var8 = var1[3] * var2[1] + var1[4] * var2[4] + var1[5] * var2[7];
- float var9 = var1[3] * var2[2] + var1[4] * var2[5] + var1[5] * var2[8];
- float var10 = var1[6] * var2[0] + var1[7] * var2[3] + var1[8] * var2[6];
- float var11 = var1[6] * var2[1] + var1[7] * var2[4] + var1[8] * var2[7];
- float var12 = var1[6] * var2[2] + var1[7] * var2[5] + var1[8] * var2[8];
- float var13 = var1[9] * var2[0] + var1[10] * var2[3] + var1[11] * var2[6] + var2[9];
- float var14 = var1[9] * var2[1] + var1[10] * var2[4] + var1[11] * var2[7] + var2[10];
- float var15 = var1[9] * var2[2] + var1[10] * var2[5] + var1[11] * var2[8] + var2[11];
- var3[0] = var4;
- var3[1] = var5;
- var3[2] = var6;
- var3[3] = var7;
- var3[4] = var8;
- var3[5] = var9;
- var3[6] = var10;
- var3[7] = var11;
- var3[8] = var12;
- var3[9] = var13;
- var3[10] = var14;
- var3[11] = var15;
- }
-
- public synchronized boolean connectX3d() {
- System.out.println(method_7("2&&Rj\b](\u001c\tc\u00062S%\u001c`@ &\u001c`o\u00060"));
-
- try {
- Enumeration var1 = ((Applet)this).getAppletContext().getApplets();
- if (var1 != null) {
- while(var1.hasMoreElements()) {
- try {
- Browser var2 = (Browser)var1.nextElement();
- if (method_7("\f\u0015\u001aN") != null) {
- System.out.println(method_7("\u0005#!\t^\u0013-+ NnZ]") + (String)var2.getProperty(method_7("\u0014\u0019\u001f\\e\u0010,")));
- this.field_1 = var2;
- return true;
- }
- } catch (Exception var4) {
- }
- }
- }
- } catch (Exception var5) {
- System.out.println(((Throwable)var5).toString());
- this.field_1 = null;
- }
-
- return false;
- }
-
- public void destroy() {
- this.field_1.removeAWTObserver(this);
- this.field_1.removeBrowserObserver(this);
- this.field_1 = null;
- super.destroy();
- }
-
- // $FF: renamed from: b0 () boolean
- private boolean method_2() {
- if (this.field_1 != null) {
- try {
- this.b19 = this.field_1.getNode(method_7("\u0010\u0003{="));
- this.b11 = this.b19.getField(method_7("2&\u000eWo\r\u001f(\u0016Xj"));
- this.b13 = this.b19.getField(method_7("0#!Jp\n-\""));
- this.b12 = this.b11.getValueFloatArray(0, -1);
- this.b14 = this.b13.getValueFloatArray(0, -1);
- } catch (Exception var1) {
- return false;
- }
-
- System.out.println(method_7("%#!\tj\u0010\"\u0019 \u0017"));
- if (!this.method_3()) {
- return false;
- } else {
- this.field_1.addAWTObserver(this);
- this.field_1.addBrowserObserver(this);
- return true;
- }
- } else {
- return false;
- }
- }
-
- public void init() {
- new String();
- String var1 = ((Applet)this).getParameter(method_7("2)\u001fWo\u0011#\u0019\u0011"));
- if (var1 != null) {
- this.b22 = new Float(((Applet)this).getParameter(method_7("2)\u001fWo\u0011#\u0019\u0011")));
- this.b15 = 1.0F / this.b22 * 1000.0F;
- }
-
- var1 = "";
- var1 = ((Applet)this).getParameter(method_7("8#\u001cVo\u0011#\u0019\u0011"));
- if (var1 != null) {
- this.b33 = new Float(((Applet)this).getParameter(method_7("8#\u001cVo\u0011#\u0019\u0011"))) / 100.0F;
- }
-
- var1 = "";
- var1 = ((Applet)this).getParameter(method_7("+\u001d\u001b-e\u00142\u0015\u001bLa"));
- if (var1 != null) {
- this.field_9 = new Integer(((Applet)this).getParameter(method_7("+\u001d\u001b-e\u00142\u0015\u001bLa")));
- }
-
- var1 = "";
- var1 = ((Applet)this).getParameter(method_7("+\u0015%-e\u00142\u0015\u001bLa"));
- if (var1 != null) {
- this.field_8 = new Integer(((Applet)this).getParameter(method_7("+\u0015%-e\u00142\u0015\u001bLa")));
- }
-
- var1 = "";
- var1 = ((Applet)this).getParameter(method_7("2+\u0016\\p\u000e-\u0018\u0012"));
- if (var1 != null && var1.toLowerCase().equals("on")) {
- this.b23 = true;
- }
-
- }
-
- // $FF: renamed from: b1 () boolean
- private boolean method_3() {
- try {
- this.b24 = (Node)this.field_1.getProperty(method_7("\u007f#\"W`v'\u0019$Yk\n,("));
- this.b25 = this.b24.getField(method_7(".# Rp\n-\""));
- this.b27 = this.b24.getField(method_7("-&\u0016Nj\u0015\u001f(\u0016Xj"));
- this.b26 = this.b25.getValueFloatArray(0, -1);
-
- for(int var1 = 0; var1 < 3; ++var1) {
- this.field_0[var1] = this.b12[var1] - this.b26[var1];
- }
-
- this.b28 = this.b27.getValueFloatArray(0, -1);
- this.method_0(this.b28[0], this.b28[1], this.b28[2], -this.b28[3], this.field_2);
- this.method_5(this.field_2, this.field_3);
- return true;
- } catch (Exception var2) {
- return false;
- }
- }
-
- public boolean onEvent(int var1, Object var2, Object var3) {
- switch (var1) {
- case 5:
- this.field_6 = false;
- this.field_1 = null;
- case 6:
- default:
- break;
- case 7:
- if (this.b17) {
- this.method_6();
- }
- }
-
- return false;
- }
-
- public boolean onEvent(Event var1) {
- switch (var1.id) {
- case 403:
- this.b17 = true;
- switch (var1.key) {
- case 1004:
- this.field_5 = -5;
- break;
- case 1005:
- this.field_5 = 5;
- break;
- case 1006:
- this.field_4 = 5;
- break;
- case 1007:
- this.field_4 = -5;
- }
-
- this.method_6();
- break;
- case 404:
- this.b17 = false;
- this.field_4 = 0;
- this.field_5 = 0;
- break;
- case 501:
- this.b17 = true;
- this.b29 = var1.x;
- this.b30 = var1.y;
- break;
- case 502:
- this.field_4 = 0;
- this.field_5 = 0;
- this.b17 = false;
- break;
- case 506:
- this.field_4 += this.b29 - var1.x;
- this.field_5 += var1.y - this.b30;
- this.b29 = var1.x;
- this.b30 = var1.y;
- this.method_6();
- }
-
- this.b31 = var1.controlDown();
- return false;
- }
-
- // $FF: renamed from: b0 (int, int, float[]) void
- private void method_4(int var1, int var2, float[] var3) {
- float[] var4 = new float[12];
- float var5 = (float)Math.sqrt((double)(var1 * var1 + var2 * var2));
- float var6 = (float)Math.sqrt((double)(this.b15 * this.b15 + var5 * var5));
- float var7 = this.b15 / var6;
- float var8 = var5 / var6;
- var3[0] = var7 + (float)var2 / var5 * ((float)var2 / var5) * (1.0F - var7);
- var3[1] = -1.0F * ((float)var1 / var5) * ((float)var2 / var5) * (1.0F - var7);
- var3[2] = (float)var1 / var5 * var8;
- var3[3] = -1.0F * ((float)var1 / var5) * ((float)var2 / var5) * (1.0F - var7);
- var3[4] = var7 + (float)var1 / var5 * ((float)var1 / var5) * (1.0F - var7);
- var3[5] = (float)var2 / var5 * var8;
- var3[6] = -1.0F * ((float)var1 / var5) * var8;
- var3[7] = -1.0F * ((float)var2 / var5) * var8;
- var3[8] = var7;
- }
-
- public void run() {
- while(this.field_7 != null) {
- if (this.field_1 == null) {
- this.connectX3d();
- }
-
- try {
- Thread.sleep(30L);
- } catch (InterruptedException var2) {
- System.out.println(((Throwable)var2).toString());
- this.stop();
- }
-
- if (!this.field_6 && this.field_1 != null) {
- this.field_6 = this.method_2();
- }
-
- if (this.b17) {
- this.method_6();
- }
- }
-
- }
-
- public void start() {
- if (this.field_7 == null) {
- this.field_7 = new Thread(this);
- this.field_7.setPriority(10);
- this.field_7.start();
- }
-
- }
-
- public void stop() {
- if (this.field_7 != null) {
- this.field_7.stop();
- this.field_7 = null;
- this.field_6 = false;
- }
-
- }
-
- // $FF: renamed from: b0 (float[], float[]) void
- private final void method_5(float[] var1, float[] var2) {
- float var3 = var1[0];
- float var4 = var1[1];
- float var5 = var1[2];
- float var6 = var1[3];
- float var7 = var1[4];
- float var8 = var1[5];
- float var9 = var1[6];
- float var10 = var1[7];
- float var11 = var1[8];
- float var12 = var1[9];
- float var13 = var1[10];
- float var14 = var1[11];
- var2[0] = var3;
- var2[1] = var6;
- var2[2] = var9;
- var2[3] = var4;
- var2[4] = var7;
- var2[5] = var10;
- var2[6] = var5;
- var2[7] = var8;
- var2[8] = var11;
- var2[9] = -var12;
- var2[10] = -var13;
- var2[11] = -var14;
- }
-
- // $FF: renamed from: b2 () void
- private void method_6() {
- float var1 = 0.0F;
- if (!this.b24.getName().equals(((Node)this.field_1.getProperty(method_7("\u007f#\"W`v'\u0019$Yk\n,("))).getName())) {
- this.method_3();
- }
-
- if (this.field_4 != 0 || this.field_5 != 0) {
- if (this.b31 || this.b23) {
- float var2 = (float)this.field_5 * this.b33;
- this.b32[0] = this.b26[0] - this.field_0[0] * var2;
- this.b32[1] = this.b26[1] - this.field_0[1] * var2;
- this.b32[2] = this.b26[2] - this.field_0[2] * var2;
- var1 = (float)Math.sqrt((double)((this.b12[0] - this.b32[0]) * (this.b12[0] - this.b32[0]) + (this.b12[1] - this.b32[1]) * (this.b12[1] - this.b32[1]) + (this.b12[2] - this.b32[2]) * (this.b12[2] - this.b32[2])));
- if (var1 > (float)this.field_9 && var1 < (float)this.field_8) {
- this.b25.setValueFloatArray(0, -1, this.b32);
- }
-
- this.field_5 = 0;
- }
-
- if (this.field_4 != 0 || this.field_5 != 0) {
- this.b14 = this.b13.getValueFloatArray(0, -1);
- this.method_0(this.b14[0], this.b14[1], this.b14[2], this.b14[3], this.b10);
- this.method_4(this.field_4, this.field_5, this.b18);
- this.method_1(this.b10, this.field_2, this.b21);
- this.method_1(this.b21, this.b18, this.b20);
- this.method_1(this.b20, this.field_3, this.b16);
- float var5 = (float)Math.acos((double)(this.b16[0] + this.b16[4] + this.b16[8] - 1.0F) / (double)2.0F);
- float var3 = 2.0F * (float)Math.sin((double)var5);
- if (var3 != 0.0F) {
- this.b14[0] = (this.b16[5] - this.b16[7]) / var3;
- this.b14[1] = (this.b16[6] - this.b16[2]) / var3;
- this.b14[2] = (this.b16[1] - this.b16[3]) / var3;
- this.b14[3] = var5;
- this.b13.setValueFloatArray(0, -1, this.b14);
- }
-
- }
- }
- }
-
- // $FF: renamed from: b0 (java.lang.String) java.lang.String
- private static String method_7(String var0) {
- char[] var1 = var0.toCharArray();
- char[] var2 = "=3,h{ ".toCharArray();
- int var3 = var1.length;
- int var4 = var2.length;
-
- for(int var5 = 0; var5 < var3; ++var5) {
- int var6 = var5 % var4;
- int var7 = var1[var5] - var2[var6];
- if (var7 <= 0) {
- var7 += 127;
- }
-
- var1[var5] = (char)var7;
- }
-
- return new String(var1);
- }
- }
-